package src.Aula05.Ex01;

public class Circulo {

    private Ponto centro;
    private double raio;

    public Circulo(Ponto centro, double raio) {
        this.centro = centro;
        this.raio = raio;

    }

    public Ponto getCentro() {
        return centro;
    }

    public double getRaio() {
        return raio;
    }

@Override

//toString
    public String toString() {
        return "Centro = " + centro + "; Raio = " + raio;
    }

//equals
    public boolean equals(Circulo outroCirculo) {
        return centro == outroCirculo.getCentro() && raio == outroCirculo.getRaio();

    }


// set

    public void setCentro(Ponto novoCentro) {
        this.centro = novoCentro;

    }

    public void setRaio(double novoRaio) {
        this.raio = novoRaio;
    }

// perimetro

    public double perimetro() {
        return Math.PI * 2 * raio;

    }
//area
    public double area() {
        return Math.PI * raio * raio;

    }

    public boolean intersetaCirculo(Circulo circulo) {                      //what
        // Fórmula
        double distance = Math.sqrt(Math.pow(circulo.getCentro().getX() - centro.getX(), 2)
                + (Math.pow(circulo.getCentro().getY() - centro.getY(), 2)));
        return distance <= (raio + circulo.getRaio());
    }
}


